import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import { createPinia } from 'pinia'

// 引入 Naive UI
import naive from 'naive-ui'

// 引入全局样式 - Vite会自动处理CSS的加载、压缩和缓存
// 在构建时会被提取为独立的CSS文件并自动注入到HTML中
import './styles/global.css'

// 生产环境错误处理
if (import.meta.env.PROD) {
  // 捕获未处理的错误
  window.addEventListener('error', (event) => {
    console.error('全局错误:', event.error)
    // 可以发送错误报告到监控服务
  })

  // 捕获未处理的 Promise 拒绝
  window.addEventListener('unhandledrejection', (event) => {
    console.error('未处理的 Promise 拒绝:', event.reason)
    // 可以发送错误报告到监控服务
  })
}



// 引入SVG图标
import './assets/icons/item-detail-icons.svg'

// 引入用户状态管理
import { useUserStore } from './stores/user'

// 创建应用实例
const app = createApp(App)
const pinia = createPinia()

// 使用插件
app.use(router)
app.use(pinia)
app.use(naive)

// 初始化用户状态
const userStore = useUserStore()
userStore.initializeUser().catch(error => {
  console.error('初始化用户状态失败:', error)
})

// 挂载应用
app.mount('#app')

